// app.js
App({
    globalData: {
        token: null,
        // urlHeader: 'https://22062002.xyz:8086',
        urlHeader: 'https://localhost:44353',
        isLoggedIn: false, // 初始化为false，表示未登录状态
        // useraccount:null,
    },

    //网路请求封装
    wxRequest: function (url, method, data) {
        const that = this; // 获取全局应用实例 
        //带sync的才是同步
        this.globalData.token = wx.getStorageSync('token');
        return new Promise((resolve, reject) => {
            wx.request({
                url: that.globalData.urlHeader + url,
                method: method,
                data: data,
                header: {
                    'content-type': 'application/json', // 默认值
                    //登录之后需要再这里带上 token 这样就可以在封装的统一请求里获取
                    //带上之后就可以获取登录用户的信息了
                    //我的 接口有了吗 我打算直接传个userid返回用户对应信息 不可以的 那随便一个人都能调
                    'Authorization': 'Bearer ' + this.globalData.token
                },
                success: res => {
                    //这里要处理一个需要登录的接口 但没有登录的情况
                    //比如说发布
                    //http请求码200 所以还是再这里处理 但还是返回res.code不等于200
                    if (res.statusCode == 200) //这个才是成功的
                    {
                        resolve(res.data)
                    } else if (res.statusCode == 401) {
                        wx.showToast({
                            title: '您还未登录，请先登录，即将跳转到登陆页面',
                            success: function () {
                                wx.redirectTo({
                                    url: '/pages/login/login'
                                });
                            }
                        })
                    }
                },
                fail: err => {
                    reject(err);
                }
            });
        });
    },
    onLaunch: function () {
        //判断是否登录
        // this.globalData.useraccount = wx.getStorageSync('useraccount'); 
        if (this.globalData.token) {
            this.globalData.isLoggedIn = true;
        }
    },
})